1. Field
Embodiments of the invention relate to the field of networking; and more specifically, to hierarchical redundancy for a distributed control plane of a network element.
2. Background
A network element (e.g., router, switch, bridge, combination router/switch/bridge, etc.) is a piece of networking equipment, including hardware and software, which communicatively interconnects other equipment on the network (e.g., other network elements, computer end stations, etc.). Typical network elements include one or more control cards (e.g., XCRP (Cross-Connect Route Processor) cards), one or more line cards, and one or more feature cards (e.g., ASE (Advanced Services Engine) cards, each interconnected via a high speed mesh. A typical network element is logically separated into a data plane (sometimes also referred to as a forwarding plane) and a control plane. In the case that the network element is a router, the control plane typically determines how data (e.g., packets) is routed (e.g., the next hop for the data and the outgoing port for that data), and the data plane forwards that data. In addition, the control plane establishes sessions and maintains those sessions (e.g., by processing control messages received by the data plane). For example, in the case where the network element is providing support for Mobile IP, the control plane establishes Mobile IP sessions and refreshes those established Mobile IP sessions (e.g., by processing binding update messages).
The control plane includes one or more processes and/or daemons communicating with each other, typically through Inter-Process Communication (IPC). IPC supports point-to-point bidirectional communication between processes, and each endpoint for IPC is uniquely identified and monitored by a master process (e.g., a process manager). In addition, the master process (e.g., the process manager) monitors all of the other processes in the control plane and data plane. In addition, the control plane includes one or more data structures related to the services it provides. For example, if the network element is a router or has routing capability, the control plane typically includes a Routing Information Base (RIB). In addition, the control plane typically includes security and/or AAA processes (e.g., Authentication, Authorization, and Accounting).
Typical network element may provide for 1:1 active/standby redundancy for control plane processes. For example, many network elements support dual control cards, where one control card acts as the active controller and the other acts as a hot standby. The active control card synchronizes with the standby control card. The standby control card assumes the role of active control card if the active control card fails. Typically, when acting as a standby control card, the standby control card does not actively perform signaling or process control messages. Other network elements may use a 1:N redundancy model where a single standby control card and/or processor backs up N active control cards and/or processors. Typically, the single standby control card does not actively perform signaling or process control messages.
A network element supports a limited number of cards. For example, the number of cards that may be installed in a network element is typically limited by the number of slots in the chassis of the network element. Since a typical 1:1 active/standby redundancy scheme requires a dedicated standby card for each active card, increasing the number of cards to increase the number of control plane services also increases the number of cards for the redundancy scheme. The addition of cards for redundancy purposes reduces the number of cards that can be used for other purposes (e.g., adding cards for control plane redundancy reduces the number of line cards that may be installed in the network element).